The present disclosure relates to computer systems, and in particular to managing virtual machines that are deployed in a virtualized computer environment.
Virtualized computer environments, which may include cloud computing systems, composite information technology systems and computer cluster systems, are used to provide computer resources or other computing resources to end users. In a cloud computing environment, the physical hardware configuration is hidden from the end user. Cloud computing systems may include servers, network storage devices, routers, gateways, communication links, software (e.g., applications, operating systems, web services, etc.), and other devices. However, because the physical hardware and software platforms on which cloud computing system is implemented are hidden within a “cloud,” they can be managed, upgraded, replaced or otherwise changed by a system administrator without the customer being aware of or affected by the change.
In a typical cloud computer environment, applications may be executed on virtual machines, which are isolated guest operating systems installed within a host system. Virtual machines are typically implemented with software emulation, hardware virtualization, or both. A single hardware and/or software platform may host a number of virtual machines, each of which may have access to some portion of the platform's resources, such as program code processing resources, storage resources, display resources, communication interfaces, etc.
Virtual machines may be configured and/or implemented to perform specific tasks, operations or functions or to execute specific applications or types of applications. Performance of virtual machines, both individually and aggregately, may rely on the virtual machines performing in accordance with a specific configuration. As such, performance of virtual machines in a cloud computing environment may be compromised by deviations in virtual machine behavior.